home *** CD-ROM | disk | FTP | other *** search
/ Sprite 1984 - 1993 / Sprite 1984 - 1993.iso / lib / pmake / RCS / script.mk,v < prev    next >
Encoding:
Text File  |  1991-09-25  |  11.0 KB  |  613 lines

  1. head     1.20;
  2. branch   ;
  3. access   ;
  4. symbols  ;
  5. locks    ; strict;
  6. comment  @@;
  7.  
  8.  
  9. 1.20
  10. date     91.09.24.19.03.42;  author jhh;  state Exp;
  11. branches ;
  12. next     1.19;
  13.  
  14. 1.19
  15. date     90.11.20.23.11.07;  author kupfer;  state Exp;
  16. branches ;
  17. next     1.18;
  18.  
  19. 1.18
  20. date     90.11.02.09.57.55;  author shirriff;  state Exp;
  21. branches ;
  22. next     1.17;
  23.  
  24. 1.17
  25. date     90.04.26.10.43.27;  author mendel;  state Exp;
  26. branches ;
  27. next     1.16;
  28.  
  29. 1.16
  30. date     90.02.20.11.50.08;  author douglis;  state Exp;
  31. branches ;
  32. next     1.15;
  33.  
  34. 1.15
  35. date     89.11.30.13.56.38;  author rab;  state Exp;
  36. branches ;
  37. next     1.14;
  38.  
  39. 1.14
  40. date     89.11.11.13.17.54;  author rab;  state Exp;
  41. branches ;
  42. next     1.13;
  43.  
  44. 1.13
  45. date     89.10.19.15.01.46;  author jhh;  state Exp;
  46. branches ;
  47. next     1.12;
  48.  
  49. 1.12
  50. date     89.10.09.16.59.16;  author tve;  state Exp;
  51. branches ;
  52. next     1.11;
  53.  
  54. 1.11
  55. date     89.10.09.06.55.45;  author rab;  state Exp;
  56. branches ;
  57. next     1.10;
  58.  
  59. 1.10
  60. date     89.10.02.10.05.13;  author rab;  state Exp;
  61. branches ;
  62. next     1.9;
  63.  
  64. 1.9
  65. date     89.04.03.22.23.33;  author douglis;  state Exp;
  66. branches ;
  67. next     1.8;
  68.  
  69. 1.8
  70. date     89.03.15.22.25.07;  author douglis;  state Exp;
  71. branches ;
  72. next     1.7;
  73.  
  74. 1.7
  75. date     89.01.01.23.03.52;  author rab;  state Exp;
  76. branches ;
  77. next     1.6;
  78.  
  79. 1.6
  80. date     88.12.29.08.37.28;  author ouster;  state Exp;
  81. branches ;
  82. next     1.5;
  83.  
  84. 1.5
  85. date     88.12.28.17.07.57;  author ouster;  state Exp;
  86. branches ;
  87. next     1.4;
  88.  
  89. 1.4
  90. date     88.12.28.14.47.45;  author ouster;  state Exp;
  91. branches ;
  92. next     1.3;
  93.  
  94. 1.3
  95. date     88.11.23.09.54.30;  author ouster;  state Exp;
  96. branches ;
  97. next     1.2;
  98.  
  99. 1.2
  100. date     88.11.23.09.52.08;  author ouster;  state Exp;
  101. branches ;
  102. next     1.1;
  103.  
  104. 1.1
  105. date     88.10.31.14.31.08;  author douglis;  state Exp;
  106. branches ;
  107. next     ;
  108.  
  109.  
  110. desc
  111. @library makefile for shell scripts.
  112. @
  113.  
  114.  
  115. 1.20
  116. log
  117. @added cleanall
  118. @
  119. text
  120. @#
  121. # Included makefile for managing a directory containing only a shell script.
  122. #
  123. # $Header: /sprite/lib/pmake/RCS/script.mk,v 1.19 90/11/20 23:11:07 kupfer Exp $ SPRITE (Berkeley)
  124. #
  125. # The makefile that includes this one should already have defined the
  126. # following variables:
  127. #    NAME        the shell script.
  128. #       MACHINES    list of all target machines currently available
  129. #            for this program.
  130. #    TYPE        a keyword identifying which sort of command this
  131. #            is;  used to determine where to install, etc.
  132. #
  133. # Optional variables that may be defined by the invoker:
  134. #    INSTALLFLAGS    additional flags to pass to install script.
  135. #
  136.  
  137. #
  138. # System programs -- assign conditionally so they may be redefined in
  139. # the including makefile
  140. #
  141. BINDIR        = /sprite/cmds.$(MACHINE)
  142.  
  143. RM        ?= $(BINDIR)/rm
  144. TEST            ?= $(BINDIR)/test
  145. UPDATE        ?= $(BINDIR)/update
  146.  
  147. #
  148. # Several variables (such as where to install) are set based on the
  149. # TYPE variable.  Of course, any of these variables can be overridden
  150. # by explicit assignments.
  151. #
  152. TYPE        ?= unknown
  153. #if !empty(TYPE:Msprite)
  154. INSTALLDIR    ?= /sprite/cmds
  155. INSTALLMAN    ?= /sprite/man/cmds
  156. #elif !empty(TYPE:Mx)
  157. INSTALLDIR    ?= /X/cmds
  158. INSTALLMAN    ?= /X/man/cmds
  159. #elif !empty(TYPE:MX11R3)
  160. INSTALLDIR    ?= /mic/X11R3/cmds
  161. INSTALLMAN    ?= /mic/X11R3/man/cmds
  162. #elif !empty(TYPE:MX11R4)
  163. INSTALLDIR    ?= /X11/R4/cmds
  164. INSTALLMAN    ?= /X11/R4/man/cmds
  165. #elif !empty(TYPE:Mdaemon)
  166. INSTALLDIR    ?= /sprite/daemons
  167. INSTALLMAN    ?= /sprite/man/daemons
  168. #elif !empty(TYPE:Madmin)
  169. INSTALLDIR    ?= /sprite/admin
  170. INSTALLMAN    ?= /sprite/man/admin
  171. #elif !empty(TYPE:Mpersonal)
  172. INSTALLDIR    ?= $(HOME)/cmds
  173. INSTALLMAN    ?= $(HOME)/man/cmds
  174. #elif !empty(TYPE:Mlocal)
  175. INSTALLDIR    ?= /local/cmds
  176. INSTALLMAN    ?= /local/man/cmds
  177. #ifndef        USERBACKUP
  178. NOBACKUP    =
  179. #endif
  180. #endif
  181. #ifdef INSTALLDIR
  182. TMINSTALLDIR    ?= $(INSTALLDIR).$(TM)
  183. #endif
  184.  
  185. #
  186. # Figure out what stuff we'll pass to sub-makes.
  187. #
  188. PASSVARS    = 'INSTALLDIR=$(INSTALLDIR)' $(.MAKEFLAGS)
  189.  
  190. #
  191. # Set up flags for various utility programs.
  192. #
  193.  
  194. #include    <tm.mk>
  195. INSTALLFLAGS    ?=
  196. INSTALLMANFLAGS    ?=
  197.  
  198. #
  199. # MAKEINSTALL usage:
  200. #    <target> : MAKEINSTALL
  201. # All of the shell scripts get updated to INSTALLDIR.
  202. #
  203. MAKEINSTALL    : .USE .SILENT
  204. #if !empty(NAME)
  205.     $(UPDATE) -l -m 555 $(INSTALLFLAGS) $(NAME) $(TMINSTALLDIR)/$(NAME)
  206. #endif
  207.  
  208. #ifndef no_targets
  209.  
  210. default            :: $(NAME)
  211.  
  212. clean tidy cleanall    ::
  213.     $(RM) -f *~
  214.  
  215. #
  216. # For "install", a couple of tricks.  First, allow local.mk to disable
  217. # by setting no_install.  Second, use :: instead of : so that local.mk
  218. # can augment install with additional stuff.  Third, issue a warning
  219. # message if TMINSTALLDIR hasn't been defined.
  220. #
  221. #ifndef no_install
  222. #ifdef TMINSTALLDIR
  223. install         :: installman MAKEINSTALL
  224. #else
  225. install            :: .SILENT
  226.     echo "Can't install $(NAME):  no install directory defined"
  227. #endif TMINSTALLDIR
  228. #endif no_install
  229.  
  230. #if empty(MANPAGES)
  231. installman        :: .SILENT
  232.     echo "There's no man page for $(NAME).  Please write one."
  233. #elif !empty(MANPAGES:MNONE)
  234. installman        ::
  235. #elif defined(INSTALLMAN)
  236. installman        :: .SILENT
  237.     $(UPDATE) -m 444 -l $(INSTALLMANFLAGS) $(MANPAGES) $(INSTALLMAN)
  238. #else
  239. installman        :: .SILENT
  240.     echo "Can't install man page(s): no install directory defined"
  241. #endif
  242.  
  243. mkmf newtm        ! .SILENT
  244.     mkmf
  245.  
  246. #
  247. # Most targets get ignored completely for scripts, since there's
  248. # nothing to do.
  249. #
  250.  
  251. depend lint tags    :: # says nothing, does nothing
  252.  
  253. dist        !
  254. #if defined(DISTDIR) && !empty(DISTDIR)
  255.     for i in Makefile local.mk $(TM).md/md.mk $(MANPAGES) $(NAME)
  256.     do
  257.     if $(TEST) -e $${i}; then
  258.         $(UPDATE)  $${i} $(DISTDIR)/$${i} ; else true; fi
  259.     done
  260. #else
  261.     @@echo "Sorry, no distribution directory defined."
  262. #endif
  263.  
  264. #include        <all.mk>
  265.  
  266. #endif no_targets
  267.  
  268. .MAKEFLAGS    : -C        # No compatibility needed
  269.  
  270. #include        <rdist.mk>
  271. @
  272.  
  273.  
  274. 1.19
  275. log
  276. @Include tm.mk.
  277. @
  278. text
  279. @d4 1
  280. a4 1
  281. # $Header: /sprite/lib/pmake/RCS/script.mk,v 1.18 90/11/02 09:57:55 shirriff Exp Locker: kupfer $ SPRITE (Berkeley)
  282. d93 1
  283. a93 1
  284. clean tidy        ::
  285. @
  286.  
  287.  
  288. 1.18
  289. log
  290. @Added /local/cmds info.
  291. @
  292. text
  293. @d4 1
  294. a4 1
  295. # $Header: /sprite/lib/pmake/RCS/script.mk,v 1.17 90/04/26 10:43:27 mendel Exp Locker: shirriff $ SPRITE (Berkeley)
  296. d75 1
  297. @
  298.  
  299.  
  300. 1.17
  301. log
  302. @added X11R4
  303. @
  304. text
  305. @d4 1
  306. a4 1
  307. # $Header: /sprite/lib/pmake/RCS/script.mk,v 1.16 90/02/20 11:50:08 douglis Exp $ SPRITE (Berkeley)
  308. d55 3
  309. @
  310.  
  311.  
  312. 1.16
  313. log
  314. @tried to add some consistency to ::/: operators, and fixed tve's TYPE==personal complaint
  315. @
  316. text
  317. @d4 1
  318. a4 1
  319. # $Header: /sprite/lib/pmake/RCS/script.mk,v 1.15 89/11/30 13:56:38 rab Exp $ SPRITE (Berkeley)
  320. d43 3
  321. @
  322.  
  323.  
  324. 1.15
  325. log
  326. @Changed dist: to dist!,
  327. @
  328. text
  329. @d4 1
  330. a4 1
  331. # $Header: /sprite/lib/pmake/RCS/script.mk,v 1.14 89/11/11 13:17:54 rab Exp Locker: rab $ SPRITE (Berkeley)
  332. d105 1
  333. a105 1
  334. installman        : .SILENT
  335. d110 1
  336. a110 1
  337. installman        : .SILENT
  338. d113 1
  339. a113 1
  340. installman        : .SILENT
  341. @
  342.  
  343.  
  344. 1.14
  345. log
  346. @Fixed dist to update script.
  347. @
  348. text
  349. @d4 1
  350. a4 1
  351. # $Header: /sprite/lib/pmake/RCS/script.mk,v 1.13 89/10/19 15:01:46 jhh Exp Locker: rab $ SPRITE (Berkeley)
  352. d127 1
  353. a127 1
  354. dist:
  355. @
  356.  
  357.  
  358. 1.13
  359. log
  360. @added support for personal sources
  361. @
  362. text
  363. @d4 1
  364. a4 1
  365. # $Header: /sprite/lib/pmake/RCS/script.mk,v 1.12 89/10/09 16:59:16 tve Exp Locker: jhh $ SPRITE (Berkeley)
  366. d129 1
  367. a129 1
  368.     for i in Makefile local.mk $(TM).md/md.mk $(MANPAGES)
  369. @
  370.  
  371.  
  372. 1.12
  373. log
  374. @Added INSTALLMAN, INSTALLDIR for TYPE=X11R3
  375. @
  376. text
  377. @d4 1
  378. a4 1
  379. # $Header: /sprite/lib/pmake/RCS/script.mk,v 1.11 89/10/09 06:55:45 rab Exp Locker: tve $ SPRITE (Berkeley)
  380. d49 6
  381. @
  382.  
  383.  
  384. 1.11
  385. log
  386. @Fixed distribution stuff.
  387. @
  388. text
  389. @d4 1
  390. a4 1
  391. # $Header: /sprite/lib/pmake/RCS/script.mk,v 1.10 89/10/02 10:05:13 rab Exp Locker: rab $ SPRITE (Berkeley)
  392. d40 3
  393. @
  394.  
  395.  
  396. 1.10
  397. log
  398. @Added Distribution stuff.
  399. @
  400. text
  401. @d4 1
  402. a4 1
  403. # $Header: /sprite/lib/pmake/RCS/script.mk,v 1.9 89/04/03 22:23:33 douglis Exp Locker: rab $ SPRITE (Berkeley)
  404. d25 1
  405. d120 1
  406. a120 1
  407.     for i in Makefile local.mk $(TM).md/md.mk $(MANPAGES) $(SRCS)
  408. d122 2
  409. a123 1
  410.     if test -e $${i}; then $(UPDATE)  $${i} $(DISTDIR)/$${i} ;fi
  411. @
  412.  
  413.  
  414. 1.9
  415. log
  416. @added 'tidy' target.
  417. @
  418. text
  419. @d4 1
  420. a4 1
  421. # $Header: /sprite/lib/pmake/RCS/script.mk,v 1.8 89/03/15 22:25:07 douglis Exp Locker: douglis $ SPRITE (Berkeley)
  422. d116 10
  423. @
  424.  
  425.  
  426. 1.8
  427. log
  428. @added check for MANPAGES = NONE to override complaint about lack of man
  429. pages.
  430. @
  431. text
  432. @d4 1
  433. a4 1
  434. # $Header: /sprite/lib/pmake/RCS/script.mk,v 1.7 89/01/01 23:03:52 rab Exp Locker: douglis $ SPRITE (Berkeley)
  435. d76 1
  436. a76 1
  437. clean            ::
  438. @
  439.  
  440.  
  441. 1.7
  442. log
  443. @fixed /srpite/admin/man to read /sprite/admin/man
  444. @
  445. text
  446. @d4 1
  447. a4 1
  448. # $Header: /sprite/lib/pmake/RCS/script.mk,v 1.6 88/12/29 08:37:28 ouster Exp Locker: rab $ SPRITE (Berkeley)
  449. d97 2
  450. @
  451.  
  452.  
  453. 1.6
  454. log
  455. @When installing man pages, copy files referenced by symbolic links,
  456. not the links themselves.
  457. @
  458. text
  459. @d4 1
  460. a4 1
  461. # $Header: /sprite/lib/pmake/RCS/script.mk,v 1.5 88/12/28 17:07:57 ouster Exp Locker: ouster $ SPRITE (Berkeley)
  462. d44 1
  463. a44 1
  464. INSTALLMAN    ?= /srpite/man/admin
  465. @
  466.  
  467.  
  468. 1.5
  469. log
  470. @Documentation cleanup.
  471. @
  472. text
  473. @d4 1
  474. a4 1
  475. # $Header: /sprite/lib/pmake/RCS/script.mk,v 1.4 88/12/28 14:47:45 ouster Exp $ SPRITE (Berkeley)
  476. d99 1
  477. a99 1
  478.     $(UPDATE) -m 444 $(INSTALLMANFLAGS) $(MANPAGES) $(INSTALLMAN)
  479. @
  480.  
  481.  
  482. 1.4
  483. log
  484. @Switched to use TYPE.  Added "installman" target.
  485. @
  486. text
  487. @d4 1
  488. a4 1
  489. # $Header: /sprite/lib/pmake/RCS/script.mk,v 1.3 88/11/23 09:54:30 ouster Exp Locker: ouster $ SPRITE (Berkeley)
  490. a8 2
  491. #    INSTALLDIR    place to install program (without the
  492. #            machine-dependent suffix;  it will get added here).
  493. d91 1
  494. a91 1
  495. #endif
  496. @
  497.  
  498.  
  499. 1.3
  500. log
  501. @Remove backward compatibility;  it shouldn't be needed anymore.
  502. @
  503. text
  504. @d4 1
  505. a4 1
  506. # $Header: /sprite/lib/pmake/RCS/script.mk,v 1.2 88/11/23 09:52:08 ouster Exp Locker: ouster $ SPRITE (Berkeley)
  507. d13 2
  508. d30 23
  509. d62 1
  510. d71 1
  511. a71 1
  512.     $(UPDATE) -l -m 555 $(INSTALLFLAGS) $(NAME) $(INSTALLDIR).$(TM)/$(NAME)
  513. d84 2
  514. a85 1
  515. # can augment install with additional stuff.
  516. d88 6
  517. a93 1
  518. install         :: MAKEINSTALL
  519. d95 11
  520. @
  521.  
  522.  
  523. 1.2
  524. log
  525. @Major changes to finalize the new C library (move include.new to
  526. include, etc.).
  527. @
  528. text
  529. @d4 1
  530. a4 1
  531. # $Header: /sprite/lib/pmake/RCS/script.mk,v 1.1 88/10/31 14:31:08 douglis Exp Locker: ouster $ SPRITE (Berkeley)
  532. a16 8
  533.  
  534. #
  535. # For backward compatibility with old Makefiles, assign NAME from
  536. # PROGRAM if PROGRAM exists.  This feature should go away soon.
  537. #
  538. #ifdef PROGRAM
  539. NAME        := $(PROGRAM)
  540. #endif
  541. @
  542.  
  543.  
  544. 1.1
  545. log
  546. @Initial revision
  547. @
  548. text
  549. @d4 1
  550. a4 1
  551. # $Header: /sprite/lib/pmake/RCS/hdrs.mk,v 1.7 88/10/26 16:29:39 ouster Exp $ SPRITE (Berkeley)
  552. d8 6
  553. a13 5
  554. #    PROGRAM        the shell script.
  555. #    INSTALLDIR    place to install program.  The ".scripts" suffix will
  556. #            be appended.
  557. #       MACHINES    machines specifying directories to contain links to
  558. #            the shell script.
  559. d19 8
  560. d28 1
  561. a28 1
  562. # including makefile
  563. a31 6
  564. CHGRP        ?= $(BINDIR)/chgrp
  565. CHMOD        ?= $(BINDIR)/chmod
  566. CHOWN        ?= $(BINDIR)/chown
  567. CP        ?= $(BINDIR)/cp
  568. ECHO        ?= $(BINDIR)/echo
  569. MV        ?= $(BINDIR)/mv
  570. d35 4
  571. a38 1
  572. INSTALLFLAGS    ?=
  573. d40 3
  574. a42 1
  575. .MAKEFLAGS    : -C
  576. d44 1
  577. a44 2
  578. # suffix for machine-independent scripts
  579. SCRIPTS = .scripts
  580. d52 2
  581. a53 2
  582. #if !empty(PROGRAM)
  583.     $(UPDATE) -l -m 555 -t $(INSTALLFLAGS) $(PROGRAM) $(INSTALLDIR)$(SCRIPTS)
  584. d58 1
  585. a58 1
  586. default:        MAKEINSTALL
  587. d60 1
  588. a60 1
  589. clean            !
  590. d63 8
  591. a70 1
  592. mkmf            : .MAKE .SILENT
  593. d72 2
  594. a73 10
  595. install     : default .MAKE .SILENT
  596. #if !empty(MACHINES)
  597.     for i in $(MACHINES);
  598.     do
  599.         echo %%% $${i} %%%
  600.         if [ ! -h $(INSTALLDIR).$${i}/$(PROGRAM) ]; then 
  601.             ln -s ../$(INSTALLDIR:T)$(SCRIPTS)/$(PROGRAM) $(INSTALLDIR).$${i};
  602.         fi
  603.     done
  604. #endif
  605. d75 4
  606. d80 4
  607. d86 2
  608. a88 3
  609.  
  610. # This is put here because mkmf may do a "make dependall" for shell scripts.
  611. dependall :: .SILENT .NOTMAIN
  612. @
  613.